package com.atlin.project.model.vo;

import com.atlin.project.model.domain.SysOperLog;
import lombok.Data;
import org.springframework.beans.BeanUtils;

import java.io.Serializable;
import java.util.Date;

/**
 * 示例表
 *
 * @TableName sysOperLog
 */
@Data
public class SysOperLogVO implements Serializable {

    
    /**
     * 日志主键
     */
    private Long operId;

    /**
     * 模块标题
     */
    private String title;

    /**
     * 业务类型（0其它 1新增 2修改 3删除）
     */
    private Integer businessType;

    /**
     * 方法名称
     */
    private String method;

    /**
     * 请求方式
     */
    private String requestMethod;

    /**
     * 操作类别（0其它 1后台用户 2手机端用户）
     */
    private Integer operatorType;

    /**
     * 操作人员
     */
    private String userAccount;

    /**
     * 请求URL
     */
    private String operUrl;

    /**
     * 主机地址
     */
    private String operIp;

    /**
     * 操作地点
     */
    private String operLocation;

    /**
     * 请求参数
     */
    private String operParam;

    /**
     * 返回参数
     */
    private String jsonResult;

    /**
     * 操作状态（0正常 1异常）
     */
    private Integer status;

    /**
     * 错误消息
     */
    private String errorMsg;

    /**
     * 操作时间
     */
    private Date operTime;

    /**
     * 消耗时间
     */
    private Long costTime;

    /**
     * 包装类转对象
     *
     * @param sysOperLogVO
     * @return
     */
    public static SysOperLog voToObj(SysOperLogVO sysOperLogVO) {
        if (sysOperLogVO == null) {
            return null;
        }
        SysOperLog sysOperLog = new SysOperLog();
        BeanUtils.copyProperties(sysOperLogVO, sysOperLog);
        return sysOperLog;
    }


    /**
     * 对象转包装类
     *
     * @param sysOperLog
     * @return
     */
    public static SysOperLogVO objToVo(SysOperLog sysOperLog) {
        if (sysOperLog == null) {
            return null;
        }
        SysOperLogVO sysOperLogVO = new SysOperLogVO();
        BeanUtils.copyProperties(sysOperLog, sysOperLogVO);

        return sysOperLogVO;
    }

    private static final long serialVersionUID = 1L;
}